diff -r e82d852e4fb0 include/carve/mesh_ops.hpp
--- a/include/carve/mesh_ops.hpp	Wed Jan 15 13:16:14 2014 +1100
+++ b/include/carve/mesh_ops.hpp	Fri Mar 28 14:34:04 2014 +0600
@@ -580,7 +580,7 @@
           std::vector<VertexInfo *> queue;
 
           void checkheap() {
-#ifdef __GNUC__
+#if defined(HAVE_IS_HEAP)
             CARVE_ASSERT(std::__is_heap(queue.begin(), queue.end(), order_by_score()));
 #endif
           }
diff -r e82d852e4fb0 lib/triangulator.cpp
--- a/lib/triangulator.cpp	Wed Jan 15 13:16:14 2014 +1100
+++ b/lib/triangulator.cpp	Fri Mar 28 14:34:04 2014 +0600
@@ -27,7 +27,6 @@
 
 #include <algorithm>
 
-
 namespace {
   // private code related to hole patching.
 
@@ -122,7 +121,7 @@
     std::vector<vertex_info *> queue;
 
     void checkheap() {
-#ifdef __GNUC__
+#if defined(HAVE_IS_HEAP)
       CARVE_ASSERT(std::__is_heap(queue.begin(), queue.end(), vertex_info_ordering()));
 #endif
     }
